1. Field of the Invention
The invention relates to systems for the purchase of goods and services over a communications network. More specifically, the invention is an automated purchase support method and apparatus for seamlessly integrating plural merchants into an on-line shopping system.
2. Description of the Related Art
The Internet is a worldwide network of computers linked together by various hardware communication links all running a standard suite of protocols known as TCP/IP (transmission control protocol/Internet protocol). The growth of the Internet over the last several years has been explosive, fueled in the most part by the widespread use of software viewers known as browsers and HTTP (hypertext transfer protocol) which allow a simple GUI (graphical user interface) to be used to communicate over the Internet. Browsers generally reside on the computer used to access content on the Internet, i.e. the client computer. HTTP is a component of TCP/IP and provides users access to files of various formats using a standard page description language known as HTML (hypertext markup language), and more recently XML (extensible markup language) and XHTML (extensible hypertext markup language), a reformulation of HTML into XML. The collection of servers on the Internet using HTTP has become known as the xe2x80x9cWorld Wide Webxe2x80x9d or simply the xe2x80x9cWeb.xe2x80x9d
Through HTML, XHTML, and interactive programming protocols, the author of a particular Web page is able to make information available to viewers of the Web page by placing the Web page on an Internet Web server. The network path to the server is identified by a URL (Uniform Resource Locator) and, generally, any client running a Web browser can access the Web server by using the URL. A client computer running a browser can request a display of a Web page stored on a Web server by issuing a URL request through the Internet to the Web in a known manner. A URL consistent with the present invention may be a simple URL of the form:
 less than protocol identifiers greater than :// less than server path greater than / less than web page path greater than 
A xe2x80x9cprotocol identifierxe2x80x9d of xe2x80x9chttpxe2x80x9d specifies the conventional hyper-text transfer protocol. A URL request for a secure Internet transaction typically utilizes the secure protocol identifier xe2x80x9chttps,xe2x80x9d assuming that the browser running on the client and the Web server control program running on the Web server support and implement the secure sockets layer discussed below. The xe2x80x9cserver pathxe2x80x9d is typically of the form xe2x80x9cprefix.domain,xe2x80x9d where the prefix is typically xe2x80x9cwwwxe2x80x9d to designate a Web server and the xe2x80x9cdomainxe2x80x9d is the standard Internet sub-domain.top-level-domain of the Web server. The optional xe2x80x9cweb page pathxe2x80x9d is provided to specifically identify a particular hyper-text page maintained on the Web server. In response to a received URL identifying an existing Web page, the Web server can return the Web page, subject to the HTTP protocol, to the client computer for display on the client computer. Such a Web page typically incorporates both textural and graphical information including embedded hyper-text links that permit the user of the client computer to readily select a next URL or send other data over the Internet. Further, a Web page can have embedded applets, written in Java(trademark) or another programming language, to present animation and/or audio.
The URL issued from the client computer may also be of a complex form that identifies a CGI (common gateway interface) program (or script) on the Web server. The CGI program permits interactivity between the client computer and the Web server via HTTP. CGI is a standard for external gateway programs to interface with information servers, such as Web servers. A plain HTML document that the Web server delivers is substantially static. A CGI program, on the other hand, is executed in real-time so that it can process data or execute commands, such as executing a buy procedure which authorizes a purchase of products through a commerce Web server. A HTML form definition reference that identifies a CGI program is commonly of the form:
 less than form action-http://www.vendor.com/cgi-bin/buy.cgi method=post greater than 
A hyper-text link of this form directs the execution of the buy.cgi program on the Web server in response to a command from the client computer. For example, buy.cgi can be a buy procedure of the Web server. The Web has become ubiquitous in businesses and homes because it has proven to be convenient for various applications, such as news and data delivery, conducting banking and investment transactions, and the like. The Web and its authoring, transmission, and display protocols, such as browsers, HTML, CGI, Active Server Pages(trademark), and Java(trademark), have become a worldwide standard for information exchange.
One of the primary applications of the Web has been shopping, i.e. the purchase of goods and services, i.e. products. Virtually every major commercial xe2x80x9cbricks and mortarxe2x80x9d merchant has established a Web site for the showcase and sale of their products. Further many manufacturers sell products directly over the Web. Finally, a plethora of on-line merchants, not previously existing in the bricks and mortar world, have come into existence. As a result, virtually every product is available for purchase over the Web from a plurality of merchants. This situation has increased the efficiency of markets by permitting shoppers to readily compare products and terms of sale from plural merchants without the need to travel physically to the merchant locations.
However, in order to compare products and terms of different merchants, one must xe2x80x9cvisitxe2x80x9d the various merchant web sites individually. First, this requires knowledge of the URLs for each merchant Web site or the use of a search engine which can be cumbersome and inaccurate. It is possible to open the various sites in different browser windows for better comparison. However, the various formats of each merchant Web site render it tedious to compare products and terms directly. When a purchase decision is made, the purchase or purchases must be made through the individual merchant Web sites. Further, ordinarily the shopper is required to log in to each merchant Web site, by entering a username and password for example, prior to making a purchase and then proceed to the next site. For example, if the shopper decides to buy three items from three different merchants, three log in procedures and three buy procedures, i.e. procedures for effecting a purchase on the merchant Web sites, must be manually executed respectively through the three merchant Web sites and their proprietary interfaces.
Recently, it is known to integrate a plurality of web sites into a single environment known as a xe2x80x9cshopping portal.xe2x80x9d Shopping portals ordinarily include a Web server presenting an integrated interface displaying plural products from various merchants. Accordingly, conventional shopping portals facilitate comparison shopping and thus increase market efficiency. However, conventional shopping portals merely serve as a gateway to the individual merchant Web sites. In particular, when a purchasing decision is made, the shopper is directed to the merchant Web site and the purchase is completed manually through the merchant Web site using the merchant Web site buy procedures and interface. Accordingly, when purchases are made from more than one merchant, conventional shopping portals require that the shopper execute the orders using different interfaces at the respective merchant Web sites.
U.S. Pat. No. 5,895,454 discloses an interface for merchant Web sites. A shopper connects to a remote merchant Web site through a shopping server. When a product is selected from a merchant server, a transaction notification is transmitted to a database on the shopping server. When the shopper is finished shopping, the shopper server transmits purchase orders corresponding to the selected products to the merchant web sites to complete the orders on behalf of the shopper. However, the system disclosed in U.S. Pat. No. 5,895,454 requires that the shopper navigate each merchant Web site individually to select products for purchase.
It is an object of the invention to seamlessly integrate plural on-line merchants into a single shopping interface.
It is another object of the invention to facilitate comparison shopping in an on-line environment.
It is another object of the invention to retain individual merchant accounts while permitting purchasing from plural merchants through a single on-line interface.
It is another object of the invention to permit a shopper to retain the advantages of shopping at a merchant site while using an integrated shopping interface.
It is another object of the invention to permit a merchant site to obtain all the commercial advantages of an actual visit by a shopper while facilitating shopping from plural merchant sites.
To achieve these and other objects, a first aspect of the invention is method of effecting commerce in a networked computer environment comprising the steps of identifying a user of a client computer to a shopping server having a database, selecting a product, based on product information in the database, for purchase from a merchant server that is remote from the shopping server, verifying the product information related to the selected product by communicating updated information related to the selected product from the merchant server to the shopping server, presenting verified product information to the user for confirmation of a purchase, and executing a buy procedure on the merchant server for purchase of the selected products from the merchant server if the user confirms the purchase.
A second aspect of the invention is a computer architecture for effecting commerce in a networked environment comprising a client computer, a shopping server executing an agent application and including a memory device having a database stored therein, a merchant server executing a commerce server application and being remote from the shopping server, and a communication channel coupling the merchant server with the shopping server and the shopping server with the client computer. The agent application is operative to identify a user of the client computer to the shopping server, permit the user to select a product, based on product information in the database, for purchase from the merchant server, verify the product information related to the selected product by communicating updated information related to the selected product from the merchant server to the shopping server over the communication channel, present verified product information to the user for confirmation of a purchase, and execute a buy procedure on the merchant server for purchase of the selected products from the merchant server if the user confirms the purchase.